Enhanced congestion control by means of selective restart of credit control sessions

ABSTRACT

The present invention provides apparatuses, methods, computer programs, computer program products and computer-readable media regarding enhanced congestion control by means of selective restart of credit control sessions. The present invention comprises storing an identifier of each of a plurality of credit control sessions handled by the charging entity when a failure has occurred at the charging entity and the plurality of credit control sessions has been terminated and a bearer associated with each of the plurality of the credit control session is to be maintained; and sending a message for requesting restart of at least one of the plurality of credit control sessions to a gateway entity handling the plurality of credit control sessions, the message including an identifier of the at least one of the plurality of credit control sessions to be restarted.

FIELD OF THE INVENTION

The present invention relates to apparatuses, methods, systems, computerprograms, computer program products and computer-readable mediaregarding enhanced congestion control by means of selective restart ofcredit control sessions.

ABBREVIATIONS/GLOSSARY:

In the description of the present invention, the following expressionswill be used as defined in documents [1] to [3].

APN Access Point Name

AVP Attribute Value Pair

CCA Credit Control Answer

CCR-I Credit Control Request—Initial Request

CCR-U Credit Control Request—Update Request

CDR Charging Data Record

DCCA Diameter Credit-Control Application

EPC Evolved Packet Core

eNB Evolved NodeB

IMS IP Multimedia Subsystem

IP Internet Protocol

HPLMN Home PLMN

LTE Long Term Evolution

MME Mobility Management Entity

MSCC Multiple Services Credit-Control

OCS Online Charging System

PCEF Policy and Charging Enforcement Function

PGW Packet Data Network Gateway

PLMN Public Land Mobile Network

PS Packet Switched

RAA Re Authorization Answer

RAR Re Authorization Request

SGW Serving Gateway

VoLTE Voice over LTE

VPLMN Visitor PLMN

Charging Data Record (CDR): A formatted collection of information abouta chargeable event (e.g. time of call set-up, duration of the call,amount of data transferred, etc) for use in billing and accounting. Foreach party to be charged for parts of or all charges of a chargeableevent a separate CDR is generated, i.e. more than one CDR may begenerated for a single chargeable event, e.g. because of its longduration, or because more than one charged party is to be charged.

Online Charging System (OCS): the entity that performs real-timeCredit-Control. Its functionality includes transaction handling, rating,online correlation and management of subscriber account balances.

Gy: Online charging reference point between a PCEF and an OCS.

Ro: Online charging reference point between a 3GPP network element (e.g.PGW) and the OCS.

BACKGROUND OF THE INVENTION

The present invention belongs to the field of 3GPP (3^(rd) GenerationPartnership Project) LTE's (Long Term Evolution) Evolved Packet Core(EPC) architecture. More specifically, the present invention belongs tothe online charging logic implemented in the PGW (Packet Data NetworkGateway) with control from OCS. This interface is defined in documents[1] to [3].

During the year 2014, 3GPP studied the congestion control mechanism forseveral interfaces. For Ro (Gy) interface, the conclusion was to notenhance the diameter application, but in case of congestion in OCS, tosend to the PGW a CCA (Credit Control Answer) with Result-Code:DIAMETER_TOO_BUSY (3004).

This type of error is defined as “Protocol Error” (3xxx) in document [4](Diameter Base Protocol). When this error is received, the creditcontrol session, e.g. a DCCA session, needs to be moved to a secondaryOCS, and if the secondary OCS is not available, then the DCCA session isterminated. The bearer is released (Failure Handling Action: Terminate)or remains active for a set time (Failure Handling Action: Continue).

Details on the failure handling actions are defined in document [2],“Annex B (normative): Failure Handling procedure and session failovermechanism description”, and in document [5] “Chapter 7: Credit-ControlApplication State Machine”.

If the Failure Handling Action is “Terminate” (options “Terminate” or“Retry and Terminate”), the bearer is terminated and subscriberexperiences a bad service from the operator (subscriber is not able toaccess the service it requested because of a fault in operator's OCS,even though at that moment the PGW and Radio Network were all able toprovide the service, however they were forced not to provide the servicedue to the failure at OCS). Terminating the bearer also generates heavysignaling in PGW, SGW (Serving Gateway), MME (Mobility ManagementEntity), eNodeB (evolved NodeB), up to the mobile terminal. Once thebearer is deleted, after a moment the mobile terminal will open it again(as the subscriber will most likely try to use again the same service).

If the Failure Handling Action is “Continue”, the subscriber does notexperience a bad service for a configurable time (optional, operatorcould decide to make the “Continue” option permanent). When theconfigurable time is elapsed, the bearer is deleted and there is animpact on the subscriber experience in a similar manner as described inthe “Terminate” case.

In the case when the Failure Handling Action is “Continue”, the DCCAsession is terminated for the remaining life of the bearer. Currently,there are no 3GPP methods that allow restarting the DCCA session. Thereonly exist some non 3GPP methods to restart the DCCA session.

For example, a timer can be configured in the PGW which starts runningwhen the “Continue” action is started. After the timer expires, the PGWwill try to start again a DCCA session (send CCR-Init) towards OCS. FromOCS point of view, PGW is simply creating a new DCCA session, unrelatedwith the previous (which was deleted when the “Continue” actionstarted). Charging data (CDRs) generated during the “Continue” actioncan be billed by postprocessing (if subscriber still has quota).

Further, it can be considered to trigger the “Continue” action only forselected error situations. Currently the failure handling procedure isselected for the bearer, and any failure handling trigger will start theselected Failure Handling action (Continue, Terminate,Retry-and-Terminate). The operator wants to trigger the dangerous“Continue” action only for very few error situations, and to terminatethe bearer in most of the situations. This would enable operators toallow that e.g. only “DIAMETER_TOO_BUSY” will trigger the “Continue”action, and any other error will simply “Terminate” the bearer. Althoughthis non-3GPP mechanism is not related with restarting a DCCA session,it can be used together with the previous method to restart the DCCAsession only for the configured error situations (and not for everyerror situation as defined by 3GPP).

However, even if the operator implements any of the above mentioned non3GPP methods for restarting DCCA sessions in case of Failure HandlingAction “Continue”, the operator needs to face the following usabilityproblems.

When an OCS fails, a large amount of DCCA sessions are deleted (andbearers moved to “Continue”). The timer for the bearers to restart theDCCA session will all expire within a short period of time, which mostlikely will trigger OCS to become congested again.

REFERENCES:

[1]: 3GPP TS 32.240

[2]: 3GPP TS 32.251

[3]: 3GPP TS 32.299

[4]: IETF RFC 3588: “Diameter Base Protocol”

[5]: IETF RFC 4006: “Diameter Credit-Control Application”

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to overcome the abovementioned problems and to provide apparatuses, methods, systems,computer programs, computer program products and computer-readable mediaregarding enhanced congestion control by means of selective restart ofcredit control sessions.

According to an aspect of the present invention there is provided amethod for use in a charging entity, comprising:

-   -   storing an identifier of each of a plurality of credit control        sessions handled by the charging entity when a failure has        occurred at the charging entity and the plurality of credit        control sessions has been terminated and a bearer associated        with each of the plurality of the credit control session is to        be maintained; and    -   sending a message for requesting restart of at least one of the        plurality of credit control sessions to a gateway entity        handling the plurality of credit control sessions, the message        including an identifier of the at least one of the plurality of        credit control sessions to be restarted.

According to another aspect of the present invention there is provided amethod for use in a charging client, comprising:

-   -   receiving a message indicating that a failure has occurred at a        charging entity handling a plurality of credit control sessions,        the message indicating that the plurality of credit control        sessions has been terminated,    -   maintaining a bearer associated with each of the plurality of        the credit control sessions,    -   receiving a message requesting restart of at least one of the        plurality of credit control sessions associated with the bearer        from the charging entity handling the plurality of credit        control sessions, the message including an identifier of the at        least one of the plurality of credit control sessions to be        restarted,    -   sending a message for requesting credit control for at least one        of the plurality of credit control sessions corresponding to the        identifier to the charging entity.

According to another aspect of the present invention there is providedan apparatus for use in a charging entity, comprising:

-   -   at least one processor,    -   and    -   at least one memory for storing instructions to be executed by        the processor, wherein    -   the at least one memory and the instructions are configured to,        with the at least one processor, cause the apparatus at least to        perform:    -   storing an identifier of each of a plurality of credit control        sessions handled by the charging entity when a failure has        occurred at the charging entity and the plurality of credit        control sessions has been terminated and a bearer associated        with each of the plurality of the credit control session is to        be maintained; and    -   sending a message for requesting restart of at least one of the        plurality of credit control sessions to a gateway entity        handling the plurality of credit control sessions, the message        including an identifier of the at least one of the plurality of        credit control sessions to be restarted.

According to another aspect of the present invention there is providedan apparatus for use in a charging client, comprising:

-   -   at least one processor,    -   and    -   at least one memory for storing instructions to be executed by        the processor, wherein    -   the at least one memory and the instructions are configured to,        with the at least one processor, cause the apparatus at least to        perform:    -   receiving a message indicating that a failure has occurred at a        charging entity handling a plurality of credit control sessions,        the message indicating that the plurality of credit control        sessions has been terminated,    -   maintaining a bearer associated with each of the plurality of        the credit control sessions,    -   receiving a message requesting restart of at least one of the        plurality of credit control sessions associated with the bearer        from the charging entity handling the plurality of credit        control sessions, the message including an identifier of the at        least one of the plurality of credit control sessions to be        restarted,    -   sending a message for requesting credit control for at least one        of the plurality of credit control sessions corresponding to the        identifier to the charging entity.

According to another aspect of the present invention there is provided acomputer program product comprising code means adapted to produce stepsof any of the methods as described above when loaded into the memory ofa computer.

According to a still further aspect of the invention there is provided acomputer program product as defined above, wherein the computer programproduct comprises a computer-readable medium on which the software codeportions are stored.

According to a still further aspect of the invention there is provided acomputer program product as defined above, wherein the program isdirectly loadable into an internal memory of the processing device.

According to a still further aspect of the present invention there isprovided an apparatus comprising:

-   -   means for storing an identifier of each of a plurality of credit        control sessions handled by a charging entity when a failure has        occurred at the charging entity and the plurality of credit        control sessions has been terminated and a bearer associated        with each of the plurality of the credit control session is to        be maintained; and    -   means for sending a message for requesting restart of at least        one of the plurality of credit control sessions to a gateway        entity handling the plurality of credit control sessions, the        message including an identifier of the at least one of the        plurality of credit control sessions to be restarted.

According to a still further aspect of the present invention there isprovided an apparatus comprising:

-   -   means for receiving a message indicating that a failure has        occurred at a charging entity handling a plurality of credit        control sessions, the message indicating that the plurality of        credit control sessions has been terminated,    -   means for maintaining a bearer associated with each of the        plurality of the credit control sessions,    -   means for receiving a message requesting restart of at least one        of the plurality of credit control sessions associated with the        bearer from the charging entity handling the plurality of credit        control sessions, the message including an identifier of the at        least one of the plurality of credit control sessions to be        restarted,    -   means for sending a message for requesting credit control for at        least one of the plurality of credit control sessions        corresponding to the identifier to the charging entity.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other objects, features, details and advantages will becomemore fully apparent from the following detailed description ofaspects/embodiments of the present invention which is to be taken inconjunction with the appended drawings, in which:

FIG. 1 is a flowchart illustrating an example of a method according tosome example versions of the present invention.

FIG. 2 is a flowchart illustrating another example of a method accordingto some example versions of the present invention.

FIG. 3 is a block diagram illustrating an example of an apparatusaccording to some example versions of the present invention.

DETAILED DESCRIPTION

In the following, some example versions of the disclosure andembodiments of the present invention are described with reference to thedrawings. For illustrating the present invention, the examples andembodiments will be described in connection with a cellularcommunication network based on a 3GPP based communication system, forexample an LTE/LTE-A based system. However, it is to be noted that thepresent invention is not limited to an application using such types ofcommunication systems or communication networks, but is also applicablein other types of communication systems or communication networks, likefor example 2G and 3G communication networks or other wirelesscommunication networks and the like.

The following examples versions and embodiments are to be understoodonly as illustrative examples. Although the specification may refer to“an”, “one”, or “some” example version(s) or embodiment(s) in severallocations, this does not necessarily mean that each such reference is tothe same example version(s) or embodiment(s), or that the feature onlyapplies to a single example version or embodiment. Single features ofdifferent embodiments may also be combined to provide other embodiments.Furthermore, words “comprising” and “including” should be understood asnot limiting the described embodiments to consist of only those featuresthat have been mentioned and such example versions and embodiments mayalso contain also features, structures, units, modules etc. that havenot been specifically mentioned.

The basic system architecture of a communication network where examplesof embodiments of the invention are applicable may comprise a commonlyknown architecture of one or more communication systems comprising awired or wireless access network subsystem and a core network. Such anarchitecture may comprise one or more communication network controlelements, access network elements, radio access network elements, accessservice network gateways or base transceiver stations, such as a basestation (BS), an access point or an eNB, which control a respectivecoverage area or cell and with which one or more communication elementsor terminal devices such as a UE or another device having a similarfunction, such as a modem chipset, a chip, a module etc., which can alsobe part of a UE or attached as a separate element to a UE, or the like,are capable to communicate via one or more channels for transmittingseveral types of data. Furthermore, core network elements such asgateway network elements, policy and charging control network elements,mobility management entities, operation and maintenance elements, andthe like may be comprised.

The general functions and interconnections of the described elements,which also depend on the actual network type, are known to those skilledin the art and described in corresponding specifications, so that adetailed description thereof is omitted herein. However, it is to benoted that several additional network elements and signaling links maybe employed for a communication to or from a communication element orterminal device like a UE and a communication network control elementlike a radio network controller, besides those described in detailherein below.

The communication network is also able to communicate with othernetworks, such as a public switched telephone network or the Internet.The communication network may also be able to support the usage of cloudservices. It should be appreciated that BSs and/or eNBs or theirfunctionalities may be implemented by using any node, host, server oraccess node etc. entity suitable for such a usage.

Furthermore, the described network elements and communication devices,such as terminal devices or user devices like UEs, communication networkcontrol elements of a cell, like a BS or an eNB, access network elementslike APs and the like, as well as corresponding functions as describedherein may be implemented by software, e.g. by a computer programproduct for a computer, and/or by hardware. In any case, for executingtheir respective functions, correspondingly used devices, nodes ornetwork elements may comprise several means, modules, units, components,etc. (not shown) which are required for control, processing and/orcommunication/signaling functionality. Such means, modules, units andcomponents may comprise, for example, one or more processors orprocessor units including one or more processing portions for executinginstructions and/or programs and/or for processing data, storage ormemory units or means for storing instructions, programs and/or data,for serving as a work area of the processor or processing portion andthe like (e.g. ROM, RAM, EEPROM, and the like), input or interface meansfor inputting data and instructions by software (e.g. floppy disc,CD-ROM, EEPROM, and the like), a user interface for providing monitorand manipulation possibilities to a user (e.g. a screen, a keyboard andthe like), other interface or means for establishing links and/orconnections under the control of the processor unit or portion (e.g.wired and wireless interface means, radio interface means comprisinge.g. an antenna unit or the like, means for forming a radiocommunication part etc.) and the like, wherein respective means formingan interface, such as a radio communication part, can be also located ona remote site (e.g. a radio head or a radio station etc.). It is to benoted that in the present specification processing portions should notbe only considered to represent physical portions of one or moreprocessors, but may also be considered as a logical division of thereferred processing tasks performed by one or more processors.

According to some example versions of the present invention, there isproposed an enhancement to the failure handling action “Continue” byallowing OCS to selectively request the restart of the DCCA sessionsthat OCS is able to handle. Instead of mass restarting of DCCA sessions(as allowed in non 3GPP methods as described above), it is proposed thatOCS will keep a list of the Session-IDs of every DCCA session which OCSmoved to “Continue”.

When a load at the OCS is lower, i.e. when the load is lower than apredetermined threshold, for example, (or no congestion anymore) or whenOCS maintenance work is finished and OCS is alive again, then OCS willstart sending RAR (Re-Authorization Request) messages towards PGW, inorder to request for the re-authentication for all DCCA quotas for theolder Session-IDs.

According to 3GPP, OCS can trigger RAR message including only theSession-ID (identifier of a DCCA-session) if OCS wants to re-authorizeevery quota or OCS can send a RAR with Session-ID and Rating Group, ifOCS wants to re-authorize a specific Rating Group from a subscriber'sDCCA session. According to some example versions of the presentinvention, only the RAR with session-ID is needed.

Currently, according to 3GPP, if OCS sends a RAR messages including onlythe Session-ID for a DCCA session which was terminated (e.g. FailureHandling action “Continue”), then the PGW will reply to the RAR commandwith a RAA (Re-Authorization Answer) with Result-Code:DIAMETER_UNKNOWN_SESSION_ID (5002).

If the bearer is still active in the PGW, then it means that the PGWstill has the information it needs (it still knows the old Session-ID ofthe terminated DCCA Session) to know that the RAR is asking forre-authorization of a DCCA session which was terminated at the PGW andthat is currently under Failure-Handling-Continue action.

According to some example versions of the present invention, it is thenproposed that at reception of such RAR (with a Session-ID which belongedto an active bearer which is under Failure-Handling-Continue action) atthe PGW, the PGW will reply to the RAR with a RAA with Result-CodeDIAMETER_LIMITED_SUCCESS (2002), and immediately trigger a CCR-U (CreditControl Request—Update Request) (not a CCR-I) towards OCS. Such CCR-Uwill contain an MSCC (Multiple Services Credit-Control) for every activeRating Group (or combination of Rating Group and Service ID), and willreport the consumed traffic from the point the “Continue” action starteduntil the CCR-U was triggered.

It shall be noted that in case the credit control client applies theFailure Handling Continue as a result of the knowledge that the OCS wastemporarily congested, then the logic of the present invention could bebound to only the bearers which are under Failure Handling Continue dueto OCS overload, while for the bearers which were moved to FailureHandling Continue due to normal OCS credit control, the Selective DCCARestart could be disabled (credit control client would reply withDIAMETER_UNKNOWN_SESSION_ID (5002) as done currently in the legacysystems).

Because OCS sent the RAR with the Session-ID, it means that OCS stillhas access to the old DCCA session (otherwise OCS would not know whatthe Session-ID was in the first place). Then, the OCS can accept theCCA-U, bill for the reported quota and if there is quota left, grantadditional quota.

It might be that some OCS vendors might prefer to offer a simplerimplementation at OCS side, when OCS only stores the Session-IDs but itdoes not have anymore access to all previous DCCA-Sessions database.Because of that, the present invention is not limited to force a restartof DCCA session by sending a CCR-U (which requires knowledge at OCS ofprevious DCCA Session), but some example versions of the presentinvention also propose local configuration at the PGW to select if thePGW will send a CCR-U or a CCR-I for restarting the DCCA session.

This extra flexibility allows an easier deployment of this invention,because it could then be deployed in 2 steps. In a first step, it can bedeployed in systems with a legacy OCS (in which the OCS does not supportthis invention) by using CCR-I, and in a second step, it can be deployedin systems with compatible OCS (in which OCS does support thisinvention) by using CCR-U.

According to some example versions of the present invention, sending ofCCR-U is the preferred option, as it allows including past charginginformation. However, sending a CCR-I is also an option, because itwould allow simpler implementation at OCS (described previously) andalso at the PGW (PGW does not need to store the unsent charging data toOCS, but it can simply send it to CDRs and remove it from its onlinecharging database).

The present invention reuses the existing implementations for RAR/RAA,CCR/CCA messages and its AVPs (Attribute Value Pairs). That is, no newAVPs and no new values of AVPs are required, which makes the featureeasier to be approved by 3GPP and by OCS/PGW vendors, as theimplementation is only in the logic applied by OCS and by PGW.

According to some example versions of the present invention, operatorscan more freely use the “Continue” action in case of errors at OCS. Thisis because the DCCA sessions will eventually be restarted and creditcontrol for the subscribers will be resumed.

Every time when the OCS is able to handle more signaling, it can send aRAR to restart another DCCA session. This can be considered a “slowloop” for restarting DCCA sessions, according to OCS availability, andthus has an advantage with respect to all current methods and proposedmethods for failure handling “Continue” with restarting DCCA sessions bylocal timers at PGW side.

When the PGW sends a CCR which requests quota for all active RatingGroups, a smooth restart of the DCCA session is assured. The PGW alreadyknows which Rating Groups the subscriber is currently using, so it doesnot need to wait for the DCCA session to be re-established in order torequest the needed quotas.

No new information needs to be stored in PGW (as the bearer is stillactive), therefore there is no capacity impact in the PGW. It is only asoftware implementation (logic) which will not consume storage resourcesat the PGW. It will just run extra logic on the already availableinformation in the PGW.

If the PGW has not implemented the proposed invention, or in case theinvention is implemented but the bearer was normally released beforethat RAR arrives, then the PGW will simply reply withDIAMETER_UNKNOWN_SESSION_ID (5002), which is current 3GPP behavior, asmentioned above. Therefore, the example versions of the proposedinvention are backward compatible with the current implementation.

The proposed functionality also enhances the current synchronizationmethods used by OCS to detect ghost session-IDs. In this scenario, aworking OCS detects that there are DCCA sessions which should havecontacted OCS already but that have not. This is the case where the PGWdeletes a DCCA session (and informs OCS), however due to an error (orlost message), the OCS keeps the DCCA session as if it is still active.To remove ghost DCCA sessions, OCS periodically sends RAR messages torequest re-authentication for all DCCA sessions which are undersuspicion. With the proposed invention, when OCS applies itssynchronization method to remove ghost DCCA sessions, all DCCA sessionswhich were under “Continue” action at the PGW will restart its DCCAsession, making the bearers to regain credit control. Then the proposedinvention will allow OCS to not only synchronize those ghost DCCAsessions, but also to regain credit control for those. This is anenhancement on current functionality, because those bearers are beingterminated under current behavior, generating the extra signaling thatreleasing bearers demand.

In the following, a more general description of some example version ofembodiments of the present invention is made with respect to FIGS. 1 to3.

FIG. 1 is a flowchart illustrating an example of a method according toexample versions of the present invention.

According to example versions of the present invention, the method maybe implemented in or may be part of a charging entity, like an onlinecharging system, or the like. The method comprises storing, in a stepS11, an identifier of each of a plurality of credit control sessionshandled by the charging entity when a failure has occurred at thecharging entity and the plurality of credit control sessions has beenterminated and a bearer associated with each of the plurality of thecredit control session is to be maintained; and sending, in a step S12,a message for requesting restart of at least one of the plurality ofcredit control sessions to a gateway entity handling the plurality ofcredit control sessions, the message including an identifier of the atleast one of the plurality of credit control sessions to be restarted.

According to some example versions of the present invention, the methodfurther comprises receiving a message for requesting credit control forthe at least one of the plurality of credit control sessionscorresponding to the identifier from the charging client.

According to some example versions of the present invention, the messagefor requesting credit control is an update credit control requestmessage and includes information on the consumed traffic for an activerating group used by a subscriber during the failure, and the methodfurther comprises resuming credit control for the subscriber based onthe information included in the message.

According to some example versions of the present invention, the methodfurther comprises informing the charging client that the charging entityis temporarily congested.

FIG. 2 is a flowchart illustrating another example of a method accordingto example versions of the present invention.

According to example versions of the present invention, the method maybe implemented in or may be part of a charging client, like a PGW, orthe like. The method comprises receiving, in a step S21, a messageindicating that a failure has occurred at a charging entity handling aplurality of credit control sessions, the message indicating that theplurality of credit control sessions has been terminated, maintaining abearer associated with each of the plurality of the credit controlsessions in a step S22, receiving, in a step S23, a message requestingrestart of at least one of the plurality of credit control sessionsassociated with the bearer from the charging entity handling theplurality of credit control sessions, the message including anidentifier of the at least one of the plurality of credit controlsessions to be restarted, and sending a message for requesting creditcontrol for at least one of the plurality of credit control sessionscorresponding to the identifier to the charging entity in a step S24.

According to some example versions of the present invention, the messageindicating that a failure has occurred at a charging entity furtherindicates that the charging entity is temporarily congested.

According to some example versions of the present invention, the messagefor requesting credit control is an update credit control requestmessage and includes information on the consumed traffic for an activerating group used by a subscriber during the failure.

According to some example versions of the present invention, the messagefor requesting credit control is an initial credit control requestmessage.

FIG. 3 is a block diagram illustrating an example of an apparatusaccording to some example versions of the present invention.

In FIG. 3, a block circuit diagram illustrating a configuration of anapparatus 30 is shown, which is configured to implement the abovedescribed aspects of the invention. It is to be noted that the apparatus30 shown in FIG. 3 may comprise several further elements or functionsbesides those described herein below, which are omitted herein for thesake of simplicity as they are not essential for understanding theinvention. Furthermore, the apparatus may be also another device havinga similar function, such as a chipset, a chip, a module etc., which canalso be part of an apparatus or attached as a separate element to theapparatus, or the like.

The apparatus 30 may comprise a processing function or processor 31,such as a CPU or the like, which executes instructions given by programsor the like. The processor 31 may comprise one or more processingportions dedicated to specific processing as described below, or theprocessing may be run in a single processor. Portions for executing suchspecific processing may be also provided as discrete elements or withinone or further processors or processing portions, such as in onephysical processor like a CPU or in several physical entities, forexample. Reference sign 32 denotes transceiver or input/output (I/O)units (interfaces) connected to the processor 31. The I/O units 32 maybe used for communicating with one or more other network elements,entities, terminals or the like. The I/O units 32 may be a combined unitcomprising communication equipment towards several network elements, ormay comprise a distributed structure with a plurality of differentinterfaces for different network elements. The apparatus 30 furthercomprises at least one memory 33 usable, for example, for storing dataand programs to be executed by the processor 31 and/or as a workingstorage of the processor 31.

The processor 31 is configured to execute processing related to theabove described aspects. In particular, the apparatus 30 may beimplemented in or may be part of a charging entity, like an onlinecharging system, or the like, and may be configured to perform a methodas described in connection with FIG. 1. Thus, the processor 31 isconfigured to perform storing an identifier of each of a plurality ofcredit control sessions handled by the charging entity when a failurehas occurred at the charging entity and the plurality of credit controlsessions has been terminated and a bearer associated with each of theplurality of the credit control session is to be maintained; and sendinga message for requesting restart of at least one of the plurality ofcredit control sessions to a gateway entity handling the plurality ofcredit control sessions, the message including an identifier of the atleast one of the plurality of credit control sessions to be restarted.

According to some example versions of the present invention, theapparatus 30 may be implemented in or may be part of a charging client,like a PGW, or the like, and may be configured to perform a method asdescribed in connection with FIG. 2. Thus, the processor 31 isconfigured to perform receiving a message indicating that a failure hasoccurred at a charging entity handling a plurality of credit controlsessions, the message indicating that the plurality of credit controlsessions has been terminated, maintaining a bearer associated with eachof the plurality of the credit control sessions, receiving a messagerequesting restart of at least one of the plurality of credit controlsessions associated with the bearer from the charging entity handlingthe plurality of credit control sessions, the message including anidentifier of the at least one of the plurality of credit controlsessions to be restarted, and sending a message for requesting creditcontrol for at least one of the plurality of credit control sessionscorresponding to the identifier to the charging entity.

For further details regarding the functions of the apparatus 30,reference is made to the description of the methods according to someexample versions of the present invention as described in connectionwith FIGS. 1 and 2.

Thus, it is noted that the apparatus for use in a charging entity, andthe apparatus for use in a charging client, generally have the samestructural components, wherein these components are configured toexecute the respective functions of the elements, respectively, as setout above.

In the foregoing exemplary description of the apparatus, only theunits/means that are relevant for understanding the principles of theinvention have been described using functional blocks. The apparatus maycomprise further units/means that are necessary for its respectiveoperation, respectively. However, a description of these units/means isomitted in this specification. The arrangement of the functional blocksof the apparatus is not construed to limit the invention, and thefunctions may be performed by one block or further split intosub-blocks.

When in the foregoing description it is stated that the apparatus (orsome other means) is configured to perform some function, this is to beconstrued to be equivalent to a description stating that a (i.e. atleast one) processor or corresponding circuitry, potentially incooperation with computer program code stored in the memory of therespective apparatus, is configured to cause the apparatus to perform atleast the thus mentioned function. Also, such function is to beconstrued to be equivalently implementable by specifically configuredcircuitry or means for performing the respective function (i.e. theexpression “unit configured to” is construed to be equivalent to anexpression such as “means for”).

For the purpose of the present invention as described herein above, itshould be noted that

method steps likely to be implemented as software code portions andbeing run using a processor at an apparatus (as examples of devices,apparatuses and/or modules thereof, or as examples of entities includingapparatuses and/or modules therefore), are software code independent andcan be specified using any known or future developed programminglanguage as long as the functionality defined by the method steps ispreserved;

generally, any method step is suitable to be implemented as software orby hardware without changing the idea of the aspects/embodiments and itsmodification in terms of the functionality implemented;

method steps and/or devices, units or means likely to be implemented ashardware components at the above-defined apparatuses, or any module(s)thereof, (e.g., devices carrying out the functions of the apparatusesaccording to the aspects/embodiments as described above) are hardwareindependent and can be implemented using any known or future developedhardware technology or any hybrids of these, such as MOS (Metal OxideSemiconductor), CMOS (Complementary MOS), BiMOS (Bipolar MOS), BiCMOS(Bipolar CMOS), ECL (Emitter Coupled Logic), TTL (Transistor-TransistorLogic), etc., using for example ASIC (Application Specific IC(Integrated Circuit)) components, FPGA (Field-programmable Gate Arrays)components, CPLD (Complex Programmable Logic Device) components or DSP(Digital Signal Processor) components;

devices, units or means (e.g. the above-defined apparatuses, or any oneof their respective units/means) can be implemented as individualdevices, units or means, but this does not exclude that they areimplemented in a distributed fashion throughout the system, as long asthe functionality of the device, unit or means is preserved;

an apparatus may be represented by a semiconductor chip, a chipset, or a(hardware) module comprising such chip or chipset; this, however, doesnot exclude the possibility that a functionality of an apparatus ormodule, instead of being hardware implemented, be implemented assoftware in a (software) module such as a computer program or a computerprogram product comprising executable software code portions forexecution/being run on a processor;

a device may be regarded as an apparatus or as an assembly of more thanone apparatus, whether functionally in cooperation with each other orfunctionally independently of each other but in a same device housing,for example.

In general, it is to be noted that respective functional blocks orelements according to above-described aspects can be implemented by anyknown means, either in hardware and/or software, respectively, if it isonly adapted to perform the described functions of the respective parts.The mentioned method steps can be realized in individual functionalblocks or by individual devices, or one or more of the method steps canbe realized in a single functional block or by a single device.

Generally, any method step is suitable to be implemented as software orby hardware without changing the idea of the present invention. Devicesand means can be implemented as individual devices, but this does notexclude that they are implemented in a distributed fashion throughoutthe system, as long as the functionality of the device is preserved.Such and similar principles are to be considered as known to a skilledperson.

Software in the sense of the present description comprises software codeas such comprising code means or portions or a computer program or acomputer program product for performing the respective functions, aswell as software (or a computer program or a computer program product)embodied on a tangible medium such as a computer-readable (storage)medium having stored thereon a respective data structure or codemeans/portions or embodied in a signal or in a chip, potentially duringprocessing thereof.

It is noted that the aspects/embodiments and general and specificexamples described above are provided for illustrative purposes only andare in no way intended that the present invention is restricted thereto.Rather, it is the intention that all variations and modifications whichfall within the scope of the appended claims are covered.

1. A method for use in a charging entity, comprising: storing anidentifier of each of a plurality of credit control sessions handled bythe charging entity when a failure has occurred at the charging entityand the plurality of credit control sessions has been terminated and abearer associated with each of the plurality of the credit controlsession is to be maintained; and sending a message for requestingrestart of at least one of the plurality of credit control sessions to agateway entity handling the plurality of credit control sessions, themessage including an identifier of the at least one of the plurality ofcredit control sessions to be restarted.
 2. The method according toclaim 1, further comprising: receiving a message for requesting creditcontrol for the at least one of the plurality of credit control sessionscorresponding to the identifier from the charging client.
 3. The methodaccording to claim 2, wherein: the message for requesting credit controlis an update credit control request message and includes information onthe consumed traffic for an active rating group used by a subscriberduring the failure, the method further comprising resuming creditcontrol for the subscriber based on the information included in themessage.
 4. The method according to claim 1, further comprising:informing the charging client that the charging entity is temporarilycongested.
 5. A method for use in a charging client, comprising:receiving a message indicating that a failure has occurred at a chargingentity handling a plurality of credit control sessions, the messageindicating that the plurality of credit control sessions has beenterminated, maintaining a bearer associated with each of the pluralityof the credit control sessions, receiving a message requesting restartof at least one of the plurality of credit control sessions associatedwith the bearer from the charging entity handling the plurality ofcredit control sessions, the message including an identifier of the atleast one of the plurality of credit control sessions to be restarted,sending a message for requesting credit control for at least one of theplurality of credit control sessions corresponding to the identifier tothe charging entity.
 6. The method according to claim 5, wherein: themessage indicating that a failure has occurred at a charging entityfurther indicates that the charging entity is temporarily congested. 7.The method according to claim 5, wherein the message for requestingcredit control is an update credit control request message and includesinformation on the consumed traffic for an active rating group used by asubscriber during the failure.
 8. The method according to claim 5,wherein the message for requesting credit control is an initial creditcontrol request message.
 9. An apparatus for use in a charging entity,comprising: at least one processor; and at least one memory for storinginstructions to be executed by the processor; wherein the at least onememory and the instructions are configured to, with the at least oneprocessor, cause the apparatus at least to perform storing an identifierof each of a plurality of credit control sessions handled by thecharging entity when a failure has occurred at the charging entity andthe plurality of credit control sessions has been terminated and abearer associated with each of the plurality of the credit controlsession is to be maintained; and sending a message for requestingrestart of at least one of the plurality of credit control sessions to agateway entity handling the plurality of credit control sessions, themessage including an identifier of the at least one of the plurality ofcredit control sessions to be restarted.
 10. The apparatus according toclaim 9, wherein the at least one memory and the instructions arefurther configured to, with the at least one processor, cause theapparatus at least to perform: receiving a message for requesting creditcontrol for the at least one of the plurality of credit control sessionscorresponding to the identifier from the charging client.
 11. Theapparatus according to claim 10, wherein: the message for requestingcredit control is an update credit control request message and includesinformation on the consumed traffic for an active rating group used by asubscriber during the failure, wherein the at least one memory and theinstructions are further configured to, with the at least one processor,cause the apparatus at least to perform: resuming credit control for thesubscriber based on the information included in the message.
 12. Theapparatus according to claim 9, wherein the at least one memory and theinstructions are further configured to, with the at least one processor,cause the apparatus at least to perform: informing the charging clientthat the charging entity is temporarily congested.
 13. An apparatus foruse in a charging client, comprising: at least one processor; and atleast one memory for storing instructions to be executed by theprocessor; wherein the at least one memory and the instructions areconfigured to, with the at least one processor, cause the apparatus atleast to perform receiving a message indicating that a failure hasoccurred at a charging entity handling a plurality of credit controlsessions, the message indicating that the plurality of credit controlsessions has been terminated, maintaining a bearer associated with eachof the plurality of the credit control sessions, receiving a messagerequesting restart of at least one of the plurality of credit controlsessions associated with the bearer from the charging entity handlingthe plurality of credit control sessions, the message including anidentifier of the at least one of the plurality of credit controlsessions to be restarted, sending a message for requesting creditcontrol for at least one of the plurality of credit control sessionscorresponding to the identifier to the charging entity.
 14. Theapparatus according to claim 13, wherein: the message indicating that afailure has occurred at a charging entity further indicates that thecharging entity is temporarily congested.
 15. The apparatus according toclaim 13, wherein the message for requesting credit control is an updatecredit control request message and includes information on the consumedtraffic for an active rating group used by a subscriber during thefailure.
 16. The apparatus according to claim 13, wherein the messagefor requesting credit control is an initial credit control requestmessage.
 17. A computer program product embodied on a non-transitorycomputer-readable medium, said computer program product including aprogram for a processing device, comprising software code portions forperforming the method of claim 1 when the program is run on theprocessing device.
 18. The computer program product according to claim17, wherein the computer program product comprises a computer-readablemedium on which the software code portions are stored.
 19. The computerprogram product according to claim 17, wherein the program is directlyloadable into an internal memory of the processing device. 20.(canceled)
 21. (canceled)